int (от англ. integer, «целое число»);float (от англ. float number, «число с плавающей точкой»);complex (от англ. complex number, «комплексное число»).int относятся все положительные и отрицательные числа без дробной части; ноль — это тоже int.int, как и переменные других типов, не требуют отдельного объявления: Python автоматически присвоит переменной нужный тип при операции присваивания:x = 231 # Готово, x - это int
y = 0 # И y - это int
z = -100 # z - тоже int +, «минус» -, «умножить» *. # Согласно правилам оформления кода PEP8 операторы отделяются пробелами.
# Отсутствие пробелов не приведёт к ошибке, но правила лучше соблюдать.
x = 40 - 11
print(x)
# Вывод в терминал: 29
x = 7 + 12
print(x)
# Вывод в терминал: 19 steps: на каждом шаге к значению этой переменной прибавляется по единице.# К предыдущему значению steps прибавляем единицу и полученное значение
# перезаписываем в ту же самую переменную steps
steps = steps + 1 # Выражение
steps = steps + 1
# можно записать через комбинированный оператор присваивания:
steps += 1 -=, *=, /=.x = 5 * 2
print(x)
# Вывод в терминал: 10 число**степень.**:x = 5**2
print(x)
# Вывод в терминал: 25
x = 22 // 2
print(x)
# Вывод в терминал: 11, ничего неожиданного (делится ровно, остатка нет)
y = 22 // 3
print(y)
# Вывод в терминал: 7
# Это результат деления с остатком.
# Возвращается только неполное частное.
z = 2 // 3
print(z)
# Вывод в терминал: 0
# Неполное частное - 0, остаток - 2, но он не возвращается. x = 11 % 3
print(x)
# Вывод в терминал: 2 11 - 9 = 2. Он-то и возвращается.x = 20 / 2
print(x)
# Вывод в терминал: 10.0
x = 11 / 3
print(x)
# Вывод в терминал: 3.6666666666666665 twelve = 4 * 3print('twelve =', twelve)two = 10 / 5print('two =', two)int. Чтобы убедиться в этом, передадим получившееся значение во встроенную функцию type(): она вернёт тип переданного аргумента.two = 10 / 5print(type(two))float — десятичную дробь; целую часть от дробной отделяют точкой. Этот тип применяют для представления вещественных чисел.# Всё это переменные типа float
a = 2.345
b = 2.
c = 2.0
x = .07
y = 0.07 b и x указаны через сокращённый синтаксис: если при записи числа перед точкой или после неё ничего не указано — Python понимает, что целая или дробная часть равны нулю.float при записи в память могут быть округлены. Это заметное отличие от чисел типа int: целое число будет записано в память без изменений. float достаточно для расчётов, но случаются ситуации, когда пятый или десятый знак после запятой играет роль, и погрешность при округлении приведёт к критической ошибке.excellent = 0.4 + 0.4 + 0.2print('excellent =', excellent)badly = 0.3 + 0.3 + 0.3 + 0.1print('badly =', badly)float домножают на 10 в степени n (на 10, 100, 1000...). Множитель подбирают так, чтобы дробная часть исходного числа стала равной нулю; затем проводят необходимые операции, а после обработки полученное значение делят на то же число, на которое умножали, приводя разрядность числа в исходное состояние.# Если передать числа как есть и выполнить операцию между ними# это приведет к неверному округлению и может повлиять# на результат расчетовinput_data_1 = 3.3 input_data_2 = 4.18input_data = input_data_1 + input_data_2print(input_data)input_data_1 = 3.3 input_data_2 = 4.18# Чтобы дробная часть всех слагаемых стала равна нулю -# кажое слагаемое умножаем на один и тот же множитель:input_data = input_data_1*100 + input_data_2*100# После получения результата возвращаем всё как было:# для сокращения записи применим комбинированный оператор присваивания /=input_data /= 100print(input_data)week_dist. Это не просто задача на сложение: Python не всегда правильно округляет дробные числа. Ваша цель — обойти эту проблему.day_1 = 1.434day_2 = 2.12day_3 = 1.632day_4 = 5.59day_5 = 2.542day_6 = 1.1day_7 = 1.324week_dist = 1000 * (day_1 + day_2 + day_3 + day_4 + day_5 + day_6 + day_7) / 1000print(week_dist)from decimal import Decimal
x = Decimal('3.3')
print(type(x))
# Вывод в терминал: <class 'decimal.Decimal'> 0.3, 0.3 , 0.3 и 0.1 в сумме дадут единицу, а никак не 0,9999999999999999.float и Decimalfrom decimal import Decimal
i = 3.3 + 4.1
print(i)
# Вывод в терминал: 7.3999999999999995
i = Decimal('3.3') + Decimal('4.1')
print(i)
# Вывод в терминал: 7.4 None.a = None
print(type(a))
# Вывод в терминал: <class 'NoneType'>
# Переопределим переменную:
a = 1
print(type(a))
# Вывод в терминал: <class 'int'> None, например, часто применяется для указания значений по умолчанию в аргументах функций.print(1 + 2*3)
# Вывод в терминал: 7
# Но
print((1 + 2) * 3)
# Вывод в терминал: 9 # Поставьте между числами арифметические операторы и скобки, если надо# В операциях должны участвовать четыре числа: 3, 4, 0 и 5, и именно в заданном порядке.result = 3 ** (4 + 0) ** 5print(result)424562. дни часы минуты секунды.# Получаем данные в секундахresponse = 424562# Переведите полученное значение в необходимые единицы измеренияsec_in_days = 60 * 60 * 24sec_in_hours = 60 * 60sec_in_minutes = 60days = response // sec_in_daysresponse = response % sec_in_dayshours = response // sec_in_hoursresponse = response % sec_in_hoursminutes = response // sec_in_minutesseconds = response % sec_in_minutesprint(days, hours, minutes, seconds)weight = 75 # Весheight = 175 # Ростdist = 9.75 # Расстояние в кмhours = 2 # Время движения в часахspent_calories = (0.035 * weight + (0.029 * weight) * (((dist/hours) ** 2) / height)) * hours * 60print(spent_calories)